1. Field of the Invention
The present invention relates to a method and apparatus for setting packet headers in a wireless communications system, and more particularly, to a method and apparatus for reducing overhead, and preventing a receiver from wrongly reassembling Service Data Units.
2. Description of the Prior Art
The third generation (3G) mobile telecommunications system has adopted a Wideband Code Division Multiple Access (WCDMA) wireless air interface access method for a cellular network. WCDMA provides high frequency spectrum utilization, universal coverage, and high quality, high-speed multimedia data transmission. The WCDMA method also meets all kinds of QoS requirements simultaneously, providing diverse, flexible, two-way transmission services and better communication quality to reduce transmission interruption rates.
The access stratum of the 3G mobile telecommunications system comprises a radio resource control (RRC), radio link control (RLC), media access control (MAC), packet data convergence protocol (PDCP), broadcast/multicast control (BMC) and other sub-layers of different functions. The operations of the above-mentioned sub-layers are well known for those skilled in the art, and will not be further mentioned. A primary function of the RLC layer is providing different transmission quality processing, performing segmentation, reassembly, concatenation, padding, retransmission, sequence check, and duplication detection on transmitted data or control instructions based on different transmission quality requirements. The MAC layer can match packets received from different logic channels of the RLC layer to common, shared, or dedicated transport channels according to radio resource allocation commands of the RRC layer, for performing channel mapping, multiplexing, transport format selection, or random access control.
When the RLC layer operates in an acknowledged mode (AM), a header of an RLC PDU (Protocol Data Unit) comprises a two-bit HE (Header Extension Type) field utilized for indicating if the next octet is data or a Length Indicator (LI) and Extension (E) bit. The HE field has different values, and the corresponding description is as follows:
1. “00”: The succeeding octet contains data.
2. “01”: The succeeding octet contains LI and E bit.
3. “10” and “11”: Reserved. PDUs with this coding represents that a protocol error is occurred, and the PDUs will be discarded.
In order to decrease overhead, the prior art can configure a “use of the special value of the HE field” mode to set “10” of the HE field to indicate that the succeeding octet contains data and the last octet of the corresponding PDU is the last octet of an SDU (Service Data Unit). In other words, in the “use of the special value of the HE field” mode, if a PDU carries either a complete SDU or a segment of a SDU, and the complete SDU or the segment of the SDU ends at the end of the PDU, the HE field of the PDU will be set to “10.” As a result, an extra PDU carrying the corresponding LI is not needed, to decrease overhead.
Therefore, after the “use of the special value of the HE field” mode is configured, if a HE field of a PDU equals “10”, it implies that there is no SDU concatenation inside the PDU. However, the condition for setting the HE field to the special value is incorrect in the prior art as follows: if the last octet of a PDU is the last octet of an SDU, and the “use of the special value of the HE field” has been configured by higher layers, set the HE field to indicate that the last octet of the PDU is the last octet of an SDU. In such a situation, even if there are concatenated SDUs inside the PDU, the prior art still sets the HE field of the PDU to indicate that the last octet of the PDU is the last octet of an SDU. In other words, the receiver will consider the concatenated SDUs as the same SDU, and reassemble the SDUs incorrectly.
In short, the prior art does not precisely specify the condition for setting the HE field to the special value, leading the receiver to wrongly reassemble the SDUs, and causing system malfunction.